/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ClassesJava;

import connexion.ConnectionManager;
import interface_graphique.Authentification;
import java.sql.ResultSet;
import java.util.Vector;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author Rabou abdelfattah 
 */
public class Utilisateur extends Personne {
    public ConnectionManager c;
    private int id;
    private String login;
    private String mot_pass;

    public Utilisateur(int id, String nom, String prenom, String tel, String email, String login, String passe) {
        super(nom, prenom, tel, email);
        this.id = id;
        this.login = login;
        this.mot_pass = passe;
        // TODO Auto-generated constructor stub
    }
   public int getid(){
   return id ;
   }
   
    public String getlogin(){
   return login ;
   }
    
     public String getmotedepasse(){
   return mot_pass ;
   }
   
    public Utilisateur() {
        super("", "", "", "");
        this.id = 0;
        this.login = "";
        this.mot_pass = "";
        // TODO Auto-generated constructor stub
    }

    public int ajouterUtilisateur(Utilisateur p) {
         int i;
        c = new ConnectionManager();
        String rq = "INSERT INTO  `gestion_des_emplois`.`utilisateur` (id , nom , prenom , tel , email , login , mot_passe )"
                + " VALUES (NULL ,'" + p.getNom() + "', '" + p.getPrenom() + "','" + p.getTel() + "','"+ p.getEmail() +"', '" + p.getlogin() + "', '"+p.getmotedepasse()+"')";
        i = c.setDataBase(rq);
        return i;
    }

    public int modifierUtilisateur(Utilisateur p) {
       int i = 0;
        c = new ConnectionManager();
        String rq = "UPDATE  `gestion_des_emplois`.`utilisateur` SET nom = '" + p.getNom()+ "', prenom = '" + p.getPrenom() +"', tel ='" + p.getTel() + "', email ='" + p.getEmail() +"', login = '"+p.getlogin()+"' , mot_passe = '"+p.getmotedepasse()+"' where id=" + p.getid();
        i = c.setDataBase(rq);
        return i; 
    }

    public int supprimerUtilisateur(Utilisateur p) {
        int i = 0;
        c = new ConnectionManager();
        String rq = "DELETE FROM `gestion_des_emplois`.`utilisateur` where id=" + p.id;
        i = c.setDataBase(rq);
        return i;
    }

    public Vector<Utilisateur> getUtilisateur() {
           Vector<Utilisateur> res = new Vector();
        try {
            c = new ConnectionManager();
            ResultSet rs = c.getDataBase("select * from utilisateur");

            while (rs.next()) {
                Utilisateur u = new Utilisateur(rs.getInt(1), rs.getString(2), rs.getString(3),rs.getString(4),rs.getString(5),rs.getString(6),rs.getString(7));
                res.add(u);
            }

        } catch (SQLException ex) {
            Logger.getLogger(Filiere.class.getName()).log(Level.SEVERE, null, ex);
        }

        return res;
    } 
   
    public boolean logIn(String login, String passe) {

        try {
             c = new ConnectionManager();
            ResultSet rs = c.getDataBase("select * from utilisateur where login='" + login
                    + "' and mot_passe='" + passe + "'");
            if (rs.next()) {
                id = rs.getInt(1);
                nom = rs.getString(2);
                prenom = rs.getString(3);
                tel = rs.getString(4);
                email = rs.getString(5);
                this.login = rs.getString(6);
                mot_pass = rs.getString(7);
                return true;
            }

        } catch (SQLException ex) {
            Logger.getLogger(Authentification.class.getName()).log(Level.SEVERE, null, ex);
        }
        return false;
    }

    public void logOut() {
    }

    public void getUser() {
    }

}
